package com.protocolterminal.AFN.entity;

import java.util.ArrayList;
import java.util.List;

import com.protocolterminal.function.FrameFunction;

public class AFN0AF1 implements Interface_Data {

	@Override
	public String frametolist(String frame) throws Exception {
		// 解析
		List<String> list = new ArrayList<>();

		// 终端数传机延时时间RTS
		list.add(String.valueOf(Integer.valueOf(frame.substring(0, 2), 16)));
		// 终端作为启动站允许发送传输延时时间
		list.add(String.valueOf(Integer.valueOf(frame.substring(2, 4), 16)));

		String temp = frame.substring(4, 8);
		// 终端等待从动站响应的超时时间
		FrameFunction frameFunction = new FrameFunction();
		temp = frameFunction.Reverse(temp);
		list.add(String.valueOf(Integer.valueOf(temp.substring(1), 16)));
		// 重发次数
		list.add(String.valueOf(Integer.valueOf(temp.substring(0, 1), 16)));

		temp = frame.substring(8, 10);
		// a） D0：1类数据自动上报
		list.add(String.valueOf(Integer.valueOf(temp, 16) & 0x1));
		// b） D1：2类数据自动上报1
		list.add(String.valueOf((Integer.valueOf(temp, 16) & 0x2) >> 1));
		// c） D2：3类数据自动上报
		list.add(String.valueOf((Integer.valueOf(temp, 16) & 0x4) >> 2));
		// “心跳”周期
		list.add(frame.substring(10, 12));

		String data = "";
		for (String string : list) {
			data += string + "-";
		}

		return data.substring(0, data.length() - 1);
	}

	@Override
	public String listtoframe(List<String> datalist) throws Exception {
		return "";
	}

}
